﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CoyoEden.Models;

namespace CoyoEden.Services
{
    public interface IRateService
    {
        /// <summary>
        /// Retrieves a Rate from the provider based on the specified id.
        /// </summary>
        Rate SelectRate(int id);
        /// <summary>
        /// Inserts a new Rate into the data store specified by the provider.
        /// </summary>
        void InsertRate(Rate item);
        /// <summary>
        /// Updates an existing Rate in the data store specified by the provider.
        /// </summary>
        void UpdateRate(Rate item);
        /// <summary>
        /// Deletes a Rate from the data store specified by the provider.
        /// </summary>
        void DeleteRate(Rate item);
        /// <summary>
        /// Batch delete
        /// </summary>
        /// <param name="items"></param>
        void DeleteRates(List<Rate> items);
        /// <summary>
        /// Retrieves all Rates from the provider and returns them in a List.
        /// </summary>
        List<Rate> FillRates();
        /// <summary>
        /// batch insert rates
        /// </summary>
        /// <param name="items"></param>
        void InsertRates(List<Rate> items);
        /// <summary>
        /// batch update rates
        /// </summary>
        /// <param name="items"></param>
        void UpdateRates(List<Rate> items);
    }
}
